// 引入库
const Koa = require('koa')
const serve = require('koa-static')
const { historyApiFallback } = require('koa2-connect-history-api-fallback')
const proxy = require('koa2-proxy-middleware')

// 创建服务实例
const app = new Koa()

app.use(proxy({
  targets: {
    '/prod-api/(.*)': {
      target: 'http://ihrm-java.itheima.net/',
      changeOrigin: true,
      // 如果前端的数据服务路径跟后端有出入, 可以使用路径重写功能
      // 在转发前进行修改
      pathRewrite: {
        '/prod-api' : '/api'
      }
    }
  }
}))

// 用中间件处理history模式页面不存在的问题
app.use(historyApiFallback())

// 使用中间件提供页面服务
app.use(serve(__dirname + '/public'))

// 运行服务器
app.listen(3333, () => {
  console.log('服务器开启成功');
  console.log('http://localhost:3333');
})